// 方法一：
// function format(num) {
//     let reg = /(\d{1,3})(?=(\d{3})+$)/g
//     return (num + '').replace(reg, '$&,');
// }

console.log(format(98765321));

//正则表达式 \d{1,3}(?=(\d{3})+$)  表示前面有1~3个数字，后面的至少由一组3个数字结尾。

//?=表示正向引用，可以作为匹配的条件，但匹配到的内容不获取，并且作为下一次查询的开始。

//$& 表示与正则表达式相匹配的内容，具体的使用可以查看字符串replace()方法的

//replace是字符串的方法 需要把num转成字符串 (num + '')


// 方法二：
function format(num) {
    var num = num + '';
    var str = '';
    for (let i = num.length - 1, j = 1; i >= 0; i--, j++) {
        if (j % 3 == 0 && i != 0) {
            str += num[i] + ','
            continue;
        }
        str += num[i];
    }
    console.log(str);

    return str.split('').reverse().join('');
}